package com.f.manage.ASCII;

import java.util.Scanner;

public class Test577 {
//    给你一个正整数m，下面有m个正整数n，求n阶乘的位数
//    输入由几行整数组成。第一行包含一个整数m，后面是m行，每行有一个整数，1<=m<=10^7。
//    输出包含输入中出现的整数的阶乘位数。
//    e = 2.7182818284590452354
//    pai = 3.141592653589793239
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String hNun = scanner.nextLine();
        int n = Integer.parseInt(hNun);
        for (int i = 0; i < n; i++) {
            String d = scanner.nextLine();
            Long c = Long.parseLong(d);
            Long shu = cal(c);
            System.out.println(String.valueOf(shu).length());
        }
    }

    public static Long cal(Long n){
        Long result = 1L;
        for(int i=1;i<=n;i++) {
            result*=i;
        }
        return result;
    }

}
